| API Documentation |  |

- MAIN PAGE
- NAMESPACES
- CLASSES

ToneMappingEffect.h
1 // ToneMappingEffect.h
3 //
5
6 namespace nkAstraeus
7 {
14 class ToneMappingEffect final : public Effect
15 {
16 public :
17
18 // Constructor, destructor
23 ToneMappingEffect (System* system) noexcept ;
28 virtual ~ToneMappingEffect () ;
29
30 // Getters
34 virtual EFFECT_TYPE getType () const override ;
38 nkGraphics::Texture* getSourceTexture () const ;
42 bool getReinhardUsed () const ;
46 const nkMaths::Vector& getReinhardMaxWhite () const ;
50 bool getHablesUsed () const ;
54 const ToneMappingHablesCurveDescriptor& getHablesDescriptor () const ;
58 bool getAcesUsed () const ;
62 const nkMaths::Matrix& getAcesLookTransform () const ;
63
64 // Setters
73 void setSourceTexture (nkGraphics::Texture* value) ;
82 void setAsReinhard (const nkMaths::Vector& maxWhite = nkMaths::Vector(2.f, 2.f, 2.f)) ;
91 void setAsHables (const ToneMappingHablesCurveDescriptor& descriptor = ToneMappingHablesCurveDescriptor()) ;
102 void setAsAces (const nkMaths::Matrix& lookTransform = nkMaths::Matrix(1.f, 0.f, 0.f, 0.f, 1.f, 0.f, 0.f, 0.f, 1.f)) ;
111 void setUseLuminance (bool value) ;
112
113 // Load
114 virtual bool load () override ;
115 virtual void unload () override ;
116
117 public :
118
119 // Statics
130 static nkMemory::UniquePtr<ToneMappingEffect> create (System* system = nullptr) ;
131 } ;
132 }
nkAstraeus::ToneMappingEffect::setSourceTexture
void setSourceTexture(nkGraphics::Texture *value)
nkAstraeus::ToneMappingEffect::getHablesUsed
bool getHablesUsed() const
nkAstraeus::ToneMappingEffect::setAsReinhard
void setAsReinhard(const nkMaths::Vector &maxWhite=nkMaths::Vector(2.f, 2.f, 2.f))
nkAstraeus::ToneMappingEffect::getAcesLookTransform
const nkMaths::Matrix & getAcesLookTransform() const
nkAstraeus::ToneMappingEffect::getReinhardMaxWhite
const nkMaths::Vector & getReinhardMaxWhite() const
nkGraphics::Texture
A texture used for rendering, hosted on GPU.
Definition: Texture.h:35
nkAstraeus::ToneMappingEffect::getAcesUsed
bool getAcesUsed() const
nkAstraeus::EFFECT_TYPE
EFFECT_TYPE
Lists all effects supported.
Definition: EffectType.h:12
nkAstraeus::ToneMappingEffect::setUseLuminance
void setUseLuminance(bool value)
nkAstraeus::ToneMappingEffect::unload
virtual void unload() override
nkAstraeus::System
The main entry point for nkAstraeus engine.
Definition: System.h:15
nkMaths::Matrix
Represents a 4x4 float matrix.
Definition: Matrix.h:14
nkAstraeus::ToneMappingHablesCurveDescriptor
Provides all parameters to tune the Hables curve to tone map an image.
Definition: ToneMappingHablesCurveDescriptor.h:12
nkAstraeus::ToneMappingEffect::load
virtual bool load() override
nkAstraeus::ToneMappingEffect::setAsAces
void setAsAces(const nkMaths::Matrix &lookTransform=nkMaths::Matrix(1.f, 0.f, 0.f, 0.f, 1.f, 0.f, 0.f, 0.f, 1.f))
nkAstraeus::ToneMappingEffect::getReinhardUsed
bool getReinhardUsed() const
nkAstraeus::ToneMappingEffect::~ToneMappingEffect
virtual ~ToneMappingEffect()
nkAstraeus::ToneMappingEffect::create
static nkMemory::UniquePtr< ToneMappingEffect > create(System *system=nullptr)
nkAstraeus::ToneMappingEffect::ToneMappingEffect
ToneMappingEffect(System *system) noexcept
nkAstraeus
Encompasses all API of component NilkinsAstraeus.
Definition: BlurComplexEffect.h:7
nkMemory::UniquePtr
Smart pointer owning the object instance it encapsulates.
Definition: UniquePtr.h:17
nkAstraeus::Effect
Base class for all effects in the component.
Definition: Effect.h:16
nkAstraeus::ToneMappingEffect::getType
virtual EFFECT_TYPE getType() const override
nkAstraeus::ToneMappingEffect::getSourceTexture
nkGraphics::Texture * getSourceTexture() const
nkAstraeus::ToneMappingEffect
A tone mapping effect meant to map linear values to display device colors.
Definition: ToneMappingEffect.h:15
nkMaths::Vector
A 4-component vector class, with floats.
Definition: Vector.h:12
nkAstraeus::ToneMappingEffect::getHablesDescriptor
const ToneMappingHablesCurveDescriptor & getHablesDescriptor() const
nkAstraeus::ToneMappingEffect::setAsHables
void setAsHables(const ToneMappingHablesCurveDescriptor &descriptor=ToneMappingHablesCurveDescriptor())